Intermediate distribution frame for distributed radio heads

ABSTRACT

Embodiments herein describe using an intermediate distribution frame (IDF) which is connected between a central controller and a plurality radio heads which each include at least one antenna for wireless communication with a user device. Instead of running separate cables to each of the radio heads, a single cable can be used to connect the IDF to the central controller and then separate cables can be used to connect the IDF to the radio heads. If the IDF is disposed near the radio heads, the amount of cables can be reduced. Moreover, the IDF may recover a clock signal used by the central controller and forward that clock to the plurality of radio head in order to synchronize the radio heads to the central controller.

TECHNICAL FIELD

Embodiments presented in this disclosure generally relate to using anintermediate distribution frame (IDF) for a distributed system withmultiple radio heads.

BACKGROUND

Typically, an IDF is a distribution frame in a building, stadium, orcampus which cross-connects the user cable media to individual user linecircuits. The IDF can serve as a distribution point for multi-paircables from the main distribution frame (MDF) or combined distributionframe (CDF) to individual cables connected to equipment in areas remotefrom the MDF and CDF. IDFs can be used for telephone exchange centraloffice, customer-premises equipment, wide area network (WAN), and localarea network (LAN) environments, etc. In WAN and LAN environments, IDFscan hold devices of different types including backup systems, (harddrives or other media as self-contained, or as RAIDs, CD-ROMs, etc.),networking (switches, hubs, routers), and connections (optical, coaxial,category cables) and so on.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above-recited features of the presentdisclosure can be understood in detail, a more particular description ofthe disclosure, briefly summarized above, may be had by reference toembodiments, some of which are illustrated in the appended drawings. Itis to be noted, however, that the appended drawings illustrate onlytypical embodiments of this disclosure and are therefore not to beconsidered limiting of its scope, for the disclosure may admit to otherequally effective embodiments.

FIG. 1 illustrates a distributed system that includes an IDF, accordingto one embodiment described herein.

FIG. 2 is a flowchart for forwarding data between a central controllerand radio heads in a distributed system, according to one embodimentdescribed herein.

FIG. 3 illustrates forwarding logic in the IDF, according to oneembodiment described herein.

FIG. 4 is a flowchart for adjusting the interleave pattern used by amulti-link gearbox engine, according to one embodiment described herein.

FIG. 5 is a multi-link gearbox mapping, according to one embodiment.

FIG. 6 is a multi-link gearbox mapping, according to one embodiment.

FIG. 7 illustrates a system used to recover a clock in the IDF 125,according to one embodiment described herein.

To facilitate understanding, identical reference numerals have beenused, where possible, to designate identical elements that are common tothe figures. It is contemplated that elements disclosed in oneembodiment may be beneficially utilized on other embodiments withoutspecific recitation.

DESCRIPTION OF EXAMPLE EMBODIMENTS

Overview

One embodiment presented in this disclosure is an IDF that includesforwarding logic configured to receive data from a central controllerintended for a plurality of radio heads, recover a clock used togenerate the received data, multiplex the received data into respectiveinput/output (I/O) interfaces for the plurality of radio heads, andtransmit the multiplexed data to the plurality of radio heads via therespective I/O interfaces along with the recovered clock. Moreover,plurality of radio heads each comprise an antenna for wirelesslytransmitting the multiplexed data.

Another embodiment described herein is a distributed system thatincludes a central controller, an IDF coupled to the central controllervia a first cable, and a plurality of radio heads coupled to the IDF viarespective cables. The IDF is configured to receive data from thecentral controller intended for the plurality of radio heads, recover aclock used to generate the received data, multiplex the received datainto respective input/output (I/O) interfaces for the plurality of radioheads, and transmit the multiplexed data to the plurality of radio headsvia the respective I/O interfaces along with the recovered clock.Moreover, the plurality of radio heads each comprises an antenna forwirelessly transmitting the multiplexed data.

Another embodiment described herein is a method of operating an IDF. Themethod includes receiving data from a central controller intended for aplurality of radio heads, recovering a clock used to generate thereceived data, multiplexing the received data into respectiveinput/output (I/O) interfaces for the plurality of radio heads, andtransmitting the multiplexed data to the plurality of radio heads viathe respective I/O interfaces along with the recovered clock. Moreover,the plurality of radio heads each comprises an antenna for wirelesslytransmitting the multiplexed data.

Example Embodiments

The embodiments herein describe a distributed system (e.g., adistributed access point) that provides wireless access to a network foruser devices. The distributed system includes a central controller thatis coupled to a plurality of radio heads that each includes one or moreantennas. Relative to typical standalone access points (APs) whichinclude expensive network controllers and memory for processing andforwarding packets, the radio heads may have scaled down systems thatforward received waveforms to the central controller which performs someor all of the modulation/demodulation and MAC layer processing anddetermines how to forward the packets. In this manner, the computeresources for processing packets received on a plurality of radio headscan be centralized at the central controller which reduces overall cost.

In some deployments of the distributed system, such as a large building(e.g., a sports venue) or multiple buildings (e.g., a college campus),the radio heads may be disposed large distances from the centralcontroller. If the radio heads were connected directly to the centralcontroller, the distributed system may need several hundred feet ofcable to couple each of the radio heads to the controller, exceeding themaximum distance supported by twisted pair Ethernet. Instead, theembodiments herein describe using an IDF which is connected between thecentral controller and the radio heads. Instead of running separatecables to each of the radio heads, a single long cable can be used toconnect the IDF to the central controller and then separate shortercables can be used to connect the IDF to the radio heads. If the IDF isdisposed near the radio heads, the amount of cables can be reduced.

To perform some multi-user functions such as multi-user multiple-inputand multiple-output (MU-MIMO), the distributed system may require lowlatency and jitter between the central controller and the radio headsand precise clock synchronization. As such, forwarding logic in the IDFwhich forwards data signals between the controller and the radio headsmay have low latency so that the overall latency and jitter of thedistributed system does not exceed the 802.11 SIFS/SLOT timing orprevent performing MU-MIMO. Moreover, in one embodiment, the IDF, unlikea switch, receives and then forwards data within a certain time framethereby reducing jitter. For example, for each data packet received fromthe central controller, the IDF forwards the packet to the appropriateradio head with a skip or s slip caused by long term drift. In oneembodiment, the waveforms forwarded by the IDF are received with ajitter of +/−8 B with a zero mean (or 6.4 ns if 10 G Ethernet is used).However, if a switch was used (which is non-deterministic) instead ofthe IDF, different flow and priority controls may cause the time takento forward a received packet to vary by one or two microseconds whichmay mean MU-MIMO cannot be performed using the radio heads.

FIG. 1 illustrates a distributed system 100 that includes an IDF 125,according to one embodiment described herein. The communication system100 includes a central controller 140 coupled to multiple radio heads105 (which can also be referred to as APs) via the IDF 125. As shown,the central controller 140 is coupled to the IDF 125 using a wiredbackend 145D (i.e., a cable), while the IDF 125 is in turn coupled tothe plurality of radio heads 105 using wired backends 145A-145C. In oneembodiment, the wired backends 145A-D are each a single cable. Thus,adding the IDF 125 to the distributed system 100 may improve cablemanagement (since the system 100 does not have cables directly couplingthe central controller 140 to each of the radio heads 105. For example,if the radio heads 105 were each located 100 meters from the centralcontroller 140, 300 meters of cable is needed to couple the radio heads105 directly to the central controller 140. However, assuming the IDF125 is disposed 20 meter from each of the radio heads 105 and 100 metersfrom the central controller 140, only 160 meters are cable are needed toimplement the distributed system 100 shown in FIG. 1.

In one embodiment, the wired backend 145D is an optical cable which canpermit higher data speeds than using a copper cable (e.g., a twistedpair Ethernet cable). If a single cable is used to couple the centralcontroller 140 to the IDF 125, the amount of data that can betransferred between the IDF 125 and the radio heads 105 is limited tothe bandwidth of that cable. While optical cables can transmit 100 Gbpsof data, a twisted pair Ethernet cable can transmit at most 25 Gbpsusing current technology. Thus, an optical cable may be preferred in thedistributed system 100 to maximize the amount of data that can betransferred between the central controller 140 and radio heads 105without having to add additional cables.

In one embodiment, the distance between the central controller 140 andthe IDF 125 may be too long to use an Ethernet cable. For example, thelatency or the signal to noise ratio associated with the Ethernet cablemay mean the distributed system 100 uses an optical fiber as the wiredbackend 145D which generally has lower transmission latency thanEthernet cables.

The wired backends 145A-C coupling the IDF 125 to the radio heads 105can be Ethernet or optical cables. One advantage of using Ethernetcables as the wired backends 145A-C is that a power supply 135 on theIDF 125 can be used to provide power-over-Ethernet (PoE) to the radioheads 105. In that case, the radio heads 105 can be located in areasthat do not have power (e.g., AC power outlets) and instead rely on thepower supply 135 in the IDF 125 to deliver power via the wired backends145A-C. In this example, only the IDF 125 is coupled to an externalpower source which avoids having to run power cords to the radio heads105 and can reduce costs. Alternatively, in one embodiment, if anEthernet cable is used as the wired backend 145D, the central controller140 can include a power supply that provides power to the IDF 125 usingPoE. In that example, the IDF 125 does not need to rely on a poweroutlet for power. The radio heads 135 could be coupled to a separatepower supply or receive PoE via the IDF 125 (assuming the combination ofthe radio heads 135 and IDF 125 do not exceed the maximum power that canbe supplied from PoE).

Using optical cables to couple the IDF 125 to the radio heads 105 mayincrease the data rate that can be transmitted between the devicesrelative to an Ethernet cable as discussed above. However, disposingoptical transmitters and receivers in the radio heads 105 and the IDF125 may be more expensive than PHYs for coupling to Ethernet cables.

The radio heads 105 include respective antennas 120 which facilitatewireless communication with other network systems or user devices. Inone embodiment, the distributed system 100 may be an enterprise leveldeployment where the central controller 150 is disposed in a centrallocation in a building or campus and the wired backends 145 (optical orelectrical cables) couple the central controller 150 to the IDF 125 andthe radio heads 105 which are spatially distributed in the building toprovide wireless access to users in the building.

The radio head 105A includes two antennas 120A and 120B, a transmitter110, and a receiver 115. Although only two antennas 120 are shown, theradio head 105A may include any number of antennas for serving anynumber of different radios. For example, the radio head 105A may includea first set of antennas with a first polarization connected to a firstradio and a second set of antennas with a second, different polarizationconnected to a second radio. Using different polarized antennas mayreduce interference when the first radio transmits data in the radiohead 105A and the second radio receives data, and vice versa.

In one embodiment, the transmitter 110 and receiver 115 are part of asame radio—e.g., a transceiver. To perform MIMO, the transmitter 110 andreceiver 115 use respective transmit and receive filters for reducinginterference from other data signals transmitted on other subcarriers.MU-MIMO is a wireless MIMO technique where at least one radio head 105sends different data to multiple user devices at the same time. In oneembodiment, the central controller 140 calculates the filters for eachof the radio heads 105 for performing MIMO. For example, the morecompute intensive tasks associated with routing data packets may beperformed by the central controller 150 which may have a larger amountof compute capacity than the radio heads 105. Put differently, the radioheads 105 can be designed to have less compute capacity thereby reducingtheir cost relative to a standalone AP.

In one embodiment, the central controller 140 includes hardwarecomponents such as one or more network processors and memory. Further,the central controller 140 may host an operating system that executesone or more software applications. In one embodiment, the radio heads105 may include a PHY layer that receives and transmits wireless signals(i.e., an analog interface) while the central controller 140 includes adigital portion of a PHY layer and a MAC layer for processing receivedpackets and transmitting packets to the radio heads 105. Thus, the PHYlayer may be split between the radio heads 105 and the centralcontroller 140 where the higher level processing layers are in thecentral controller 140. In one embodiment, the radio heads 105 alsoinclude high-level processing layers (e.g., MAC or physical codingsublayer (PCS)) to evaluate the received packets. For example, the radioheads 105 may include higher-level processing levels to determine ifthere is interference on a channel when performing clear channelassessment.

In one embodiment, the radio heads 105, the IDF 125 and the centralcontroller 140 are perceived to the perspective of a user device as asingle device—e.g., a single AP. For example, the user device cancommunicate through any of the radio heads 105, and to its perspective,is communicating with the same AP. Thus, in this embodiment, the BSSIDtransmitted through each of the radio heads 105 is the same.Alternatively, in another embodiment, the central controller 140 mayassign different groups of the radio heads 105 to different BSSIDs. Inthis case, to the perspective of an associated user device, the userdevice believes it is communicating with different APs depending on theBSSID of the radio head the user device is communicating with. In thisexample, the system 100 appears as multiple APs although all the radioheads 105 may be controlled by a single central controller 140.

FIG. 2 is a flowchart for forwarding data between a central controllerand radio heads in a distributed system, according to one embodimentdescribed herein. At block 205, the IDF receives data plane and controlplane traffic from a central controller intended for a plurality ofradio heads. As described above, the IDF is an intermediate device thatreceives data signals (e.g., IQ signals) which are forwarded to theradio heads. Moreover, in the embodiments below it is assumed that thecentral controller also transmits control plane traffic intended for theIDF for managing the functions of the IDF (which is described later).For example, the central controller may transmit 100 Gbps of data to theIDF (using an optical cable) where the majority of the data is intendedfor the radio heads but a portion of that data contains control planetraffic for managing the IDF which is not forwarded to the radio heads.

The IDF includes a PHY layer for receiving the data signals receivedfrom the central controller. Moreover, the IDF includes forwarding logicfor determining which data is intended for the radio heads and whichportions are intended for the IDF (i.e., the control plane traffic). Ofcourse, in some embodiments, the central controller may also forwardcontrol plane traffic to the radio heads. In which case, the IDFforwards this traffic to the radio heads as described below.

At block 210, the IDF recovers the clock used by the central controller.For example, the forwarding logic in the IDF uses the signals receivedfrom the central controller to recover the clock used by the centralcontroller to transmit the data to the IDF. The IDF can use therecovered clock to control its forwarding logic that forwards thereceived data signals to the respective radio heads. In this manner, theIDF has a master-servant relationship with the radio heads where theclock provided by the IDF (which can be recovered from the signalsreceived from the central controller) synchronizes the radio heads tothe central controller. Put differently, the downlinks to the radioheads are servants to the clock signal for the uplink coupling the IDFto the central controller.

At block 215, the IDF multiplexes the data plane traffic into respectiveI/O interfaces for the radio heads. In one embodiment, the centralcontroller interleaves the data plane traffic for the radio heads whentransmitting the data to the IDF. As such, the IDF demultiplexes thereceived data plane traffic so that the data intended for a particularradio head is forwarded to the corresponding I/O interface. In thismanner, the IDF can receive a single stream of data using a single highspeed link (e.g., a 100 Gbps optical link) and demultiplex the data intodifferent streams for the respective radio heads (e.g., a 10 Gbps streamto each radio head) without packetization latencies.

In one embodiment, the IDF uses Synchronization Ethernet (SyncE) tosynchronize the radio heads to the central controller. As describedabove, the distributed system may need very low jitter (e.g., +/−1 ps)when signals are received at the radio heads to perform certain MIMOfunctions. By recovering the clock at the IDF and then using that clockto forward the data to the radio heads, the IDF can use SyncE tosynchronize the radio heads to the central controller. Generally, SyncEis a standard where the frequency of the transmitted signals is adjustedto synchronize two ends of a communication link (e.g., the centralcontroller and the radio heads) using the master clock (e.g., the clockrecovered from the central controller. The details of recovering theclock are described later in FIG. 7.

FIG. 3 illustrates forwarding logic 130 in the IDF, according to oneembodiment described herein. As shown, FIG. 3 illustrates portions ofthe forwarding logic 130 for forwarding data received from the centralcontroller 140 to the radio heads 105. In this embodiment, theforwarding logic 130 includes a PCS layer 305 that forms an I/Ointerface for coupling the IDF 125 to the central controller 140 and theradio heads 105. Although a PCS layer 305 is shown, in otherembodiments, the I/O interfaces may include additional components forperforming the functions herein.

The waveforms transmitted by the central controller 140 are received atthe PCS layer 305 at the top of the PHY layer. In some embodiments, thePCS layer 305 can perform encoding/decoding, scrambling/descrambling,alignment marker insertion/removal, block and symbol redistribution, andlane block synchronization and deskewing. In this example, the PCS layer305 includes a multiplexer for forwarding the received data to aplurality of PCS layers—i.e., PCS layers 305B-305D. The PCS layer 305Ademultiplexes the data stream received by the central controller 140into the PCS layer corresponding to the intended recipient. For example,if the data from the central controller 140 includes 50 Gbps for fiveradio heads, the PCS layer 305A multiplexes the received data into fiveseparate 10 Gbps streams into the corresponding PCS layers 305.

The respective PCS layers 305B-D for the I/O interfaces for the radioheads transmit the waveforms received from the central controller 140 tothe radio heads. The PCS layers 305B-D may be coupled to either opticalor Ethernet (e.g., copper) cables for communicating with the radio heads105. Although not shown in FIG. 3, if Ethernet cables are used, the IDF125 may transmit PoE to the radio heads 105 which enables the radioheads to be located in remote locations without easy access to power.

The forwarding logic 130 also includes a multi-link gearbox (MLG) engine315. As described in more detail below, the serializers/deserializers(SerDes) in the central controller may use a cut through model asdescribed in USXGMII to create the data stream transmitted to the IDF125. Doing so permits the SerDes to create a single data stream thatcontains interleaved data for multiple destinations—e.g., differentradio heads. The MLG engine 315 is in communication with a correspondingengine in the central controller to determine the particular MLG mappingused by the central controller to generate the data stream. For example,the MLG engine 315 determines whether the central controller transmits adata stream containing 10 Gbps of data for five radio heads or 5 Gbps ofdata for ten radio heads. Once the MLG mapping is known, the MLG engine315 controls the multiplexing performed by the PCS layer 305A to ensurethe appropriate data is forwarded to the radio heads. For example, theIDF 125 may include appropriate hardware (e.g., PCS layers in a PHY) forup to eight radio heads 105. If the IDF 125 is coupled to eight radioheads 105, the central controller may transmit interleaved datacontaining 10 Gbps for each radio heads (e.g., 80 Gbps). In response,the MLG engine 315 controls the PCS layer 305A such that the appropriate10 Gbps is forwarded to each of the eight PCS layers 305 in the I/Ointerface for the central controller 140 in the IDF 125. However, ifonly four radio heads 105 are currently coupled to the IDF 125, thecentral controller may transmit fill (null) data (or increase the datatransmitted to the individual radio heads) so that data stream is still80 Gbps. As described below, the MLG engine 315 can adjust themultiplexing the PCS layer 305 such that the data streams for the fourconnected radio heads 105 is forwarded to the appropriate PCS layers 305while the remaining data is discarded.

Returning to method 200, at block 220, the IDF transmits the multiplexeddata plane traffic along with the recovered clock to the radio heads. Asdescribed above, in one embodiment, the uplinks between the IDF to theradio heads are servants to the downlink between the central controllerand the IDF. Moreover, the IDF may be a deterministic device where thedata received by the IDF is consistently transmitted to the radio headswith the same latency. That is, the traversal time for the receivedpackets through the IDF 125 is substantially the same (with some minorvariation in jitter: +/−1 ns). Thus, unlike traditional switches, theIDF can predictively receive and forward the packets between the centralcontroller and the radio heads.

Although the previous discussion described forwarding IQ signalsreceived from the central controller to the radio heads, the IDF alsoreceives IQ data signals from the radio head and transmits this data tothe central controller. Referring again to FIG. 3, the radio heads mayreceive wireless signals from user devices and use respective PHY layers(not shown) to transmit waveforms to the PCS layers B-D in the IDF 125.These waveforms are interleaved in the PCS layer 305A before beingtransmitted to the central controller 140. That is, the MLG engine 315provides an MLG mapping to the PCS layer 305 so the respective datastreams received from the radio heads 105 (e.g., 3×10 Gbps) can beinterleaved into a single data stream that is transmitted to the centralcontroller (e.g., 30 Gbps). Because this MLG mapping may be previouslynegotiated with the MLG engine in the central controller—i.e., thecentral controller knows the MLG mapping used by the IDF 125—the centralcontroller can separate (i.e., demultiplex) the single data stream andindividually process the data received from the radio heads. In thismanner, the IDF 125 permits bi-directional communication between thecentral controller 140 and the radio heads 105 without adding latencyand jitter that would prevent the distributed system from performingMIMO functions.

At block 225, IDF uses the control plane traffic to manage its settings.As described above, the data stream between the central controller andthe IDF can contain control plane traffic for managing the IDF. Forexample, a 100 Gbps data stream generated by the central controller maycontain 1 Gbps of control plane traffic for the IDF. Because the MLGengine on the IDF knows where this control plane traffic is located inthe received data stream, the IDF can separate this data from theremaining data in the data stream that is for the radio head or has filldata.

The IDF can contain a processor for adjusting the functions of the IDFin response to the control plane traffic. For example, the centralcontroller may use the control plane traffic to detect and initializethe IDF and control downstream PoE from the IDF to the radio heads.Although not shown in FIG. 3, the IDF 125 may include a MAC layercoupled to the PCS 305A for receiving control plane data from thecentral controller 140. This control plane data may include the MLGmapping described above. In other examples, the control plane trafficcan be used to upload software or firmware updates for the IDF. Forinstance, the control plane traffic can provide updates for fixing a bugidentified in the IDF after the IDF was manufactured or deployed.Moreover, the control plane traffic can enable and disable ports in theIDF and manage power distribution between ports if PoE is used. Thus, inthis manner, a portion of the data stream between the IDF and thecentral controller can be used to establish bi-directional communicationbetween these devices. In one embodiment, the IDF does not forward thisdata to the radio heads. For example, the IDF may receive 51 Gbps ofdata from the central controller (e.g., 5×10 Gbps for the radio headsand 1 Gbps for the control plane traffic of the IDF) but the IDFforwards only the 50 Gbps of data intended for the radio heads andprocesses the control plane traffic internally.

FIG. 4 is a flowchart of a method 400 for adjusting the interleavepattern used by a MLG engine, according to one embodiment describedherein. At block 405, the IDF determines the number of connected radioheads. For example, the IDF may include eight I/O interfaces includingEthernet or optical ports for coupling to radio heads, however, only aportion of the I/O interfaces may currently be connected to a radiohead.

At block 410, the IDF informs the central controller of the number ofconnected radio heads. In one embodiment, the IDF uses the control planedata stream discussed above to inform the central controller of thenumber of connected radio heads.

In one embodiment, the central controller transmits the same amount ofdata to the IDF (and vice versus) regardless of the number of radioheads connected to the IDF. For example, the central controller and IDFmay transmit 100 Gbps of data regardless of whether there is two oreight radio heads coupled to the IDF. In one embodiment, the centralcontroller includes eight SerDes lanes that each can support 10 G. Ifthe central controller is coupled directly to either radio heads, theneach of the eight SerDes lanes provides eight individual 10 Gbps linksto the radio heads. However, when the central controller is coupled tothe IDF as shown in FIG. 1, a portion of the SerDes lanes arereconfigured to work together to transmit and receive data to the IDF.In one embodiment, the four SerDes lanes to form a single 100 GBASE-SR4optical link to the IDF. In this example, the four SerDes lanes providea 4×25 G 100 GBASE-SR4 link with a variant of MLG to multiplex multiplelogical ports over a set of the four SerDes lanes. In order to supportlow cost 10 G optical radio heads, the SerDes are rated at 25 Gbps forbetter signal integrity, but still are clocked at 10 G.

In one embodiment, the other remaining SerDes lanes in the networkcontroller (e.g., four of the eight) are unused or disabled when thecentral controller is coupled to the IDF. However, in other embodiments,the unused SerDes lanes may be used to communicate with radio heads thatare directly coupled to the central controller. For example, anotherfour radio heads could be coupled to the central controller and use theother four SerDes lanes to form respective 10 Gbps links to these radioheads. However, the central controller may need to contain more routinglogic and firmware to establish the 100 Gbps link to the IDF along withthe 4×10 Gbps to the directly coupled radio heads when compared to acentral controller that is configured to either provide up to 8×10 Gbpslinks to eight directly connect radio heads or 1×100 Gbps to a IDF, butnot both simultaneously.

As mentioned above, the central controller may establish a 100 Gbps linkto the IDF regardless of the number of radio heads connected to the IDF.For example, if there are four connected radio heads, the centralcontroller may transmit 100 Gbps of data to the IDF even though only4×10 Gbps of that data is actually intended for the radio heads. Theremaining portion of the data may be fill data (i.e., unused data). Onereason for doing so is that the central controller can use USXGMII-Mwhich provides a cut-through model for transmitting data rather than astore and forward model. Moreover, sending packets with gaps causesjitter. The four SerDes generating the 100 Gbps link can execute at thesame rate regardless of the number of radio heads connected to the IDF.The PCS layer in the central controller can perform data replicationusing a cut through model so that the data does not need to be stored,or change the rate of the SerDes. The MLG engine in the centralcontroller can establish an interleave pattern used by the PCS layer togenerate the 100 Gbps link. This interleave pattern can vary dependingon the number of radio heads connected to the IDF.

At block 415, the interleave pattern used by the MLG engines in thecentral controller and the IDF is adjusted to account for the connectedradio heads. For example, after transmitting initial synchronizationpatterns over the four SerDes lanes to identify order and phase offsetbetween lanes, the MLG engine in the central controller can instruct thePCS layer to interleave PCS words for up to 10×10 Gbps ports in theinterleave pattern using the 4×25 Gbps provided by the four SerDeslanes. Doing so interleaves both the Ethernet frames as well asinterframe gaps (IFG) and preambles in a cut through manner and can addor drop one PCS idle in the IFG to match minor timing differencesbetween interfaces—e.g., ingress and egress Ethernet ports. As thenumber of connected radio heads changes, so will the amount of fill oridle data transmitted in the 100 Gbps link. That is, instead of changingthe rate of the SerDes to use a non-standard data rate, the MLG engineprovides fill patterns such as local fault for the unused ports toaccount for the number of connected radio heads. For instance, if aradio head is disconnected from the IDF, the MLG engine instructs thePCS layer to use local fault pattern or some other fill pattern toinsert fill or idle data into the 10 Gbps in the 100 Gbps link that waspreviously used to transmit data between the central controller and thenow disconnected radio head.

FIG. 5 is a MLG mapping 500, according to one embodiment. In thismapping 500, it is assumed that link between the IDF and the centralcontroller is 100 Gbps which is subdivided into 10×10 Gbps links. Atthis time, Links 1-6 are assigned to transmit data plane traffic forradio heads (RHs) 105A-105F. Put differently, in this example, there aresix radio heads 105 coupled to the IDF which are each assigned 10 Gbpsof the 100 Gbps link. In this embodiment, the Links 7-9 (and thecorresponding 3×10 Gbps) include fill data. That is, the MLG engines inthe central controller and IDF instruct their respective PCS layers touse a fill pattern to insert 30 Gbps of fill data so that the total datarate of 100 Gbps is maintained.

In another embodiment, the bandwidth is not distributed equally amongthe radio heads. For example, a 100 G link can be multiplexed acrosstwelve radio heads where eight of the radio heads have 10 G links andfour of the radio heads have 5 G links.

Moreover, Link 10 includes control plane traffic for the IDF. Asmentioned above, this traffic can be used to obtain a status of the IDF,provide firmware/software updates, and the like. However, the full 10Gbps of data may be more than is needed to transmit the desired controlplane traffic. In this embodiment, the IDF can use USXGMII to convertthe received 10 Gbps from the central controller to 1 Gbps which againavoids changing the speed or rate of the SerDes in the centralcontroller.

Using the mapping 500 in FIG. 5, the MLG engines can transmit 100 Gbpsalthough only 61 Gbps is actually used for either data plane or controlplane traffic for the radio heads and the IDF.

Returning to block 420, the central controller or a system administratordetermines if a channel in the wired backend to the central controlleris down. For example, one of the four SerDes lanes providing the 100Gbps link may be down. In one embodiment, the bit error rate (BER) forone of the SerDes lanes may exceed a threshold. For example, a systemadministrator may test each of the SerDes lanes after detecting aperformance issue with the central controller to determine the BER foreach of the lanes. If the administrator determines a lane is down orunavailable, the MLG engine can adjust its mapping to account for thereduction in usable bandwidth.

FIG. 6 is a MLG mapping 600, according to one embodiment. Here, it isassumed that one of the 25 Gbps SerDes lanes is unavailable, therebyleaving 75 Gbps of usable bandwidth in the link between the centralcontroller and the IDF. Moreover, there are eight radio heads connectedto the IDF rather than only six as shown in mapping 500 in FIG. 5. Ifall four SerDes lanes were available, then each of Links 1-8 would haveat least 10 Gbps available. However, since only 3×25 Gbps is availableto transmit usable data, the MLG engines reduce the bandwidth providedto Links 1 and 2 to 5 Gbps which transmit data plane traffic to radioheads 105A and 105B. The Links 3-8 to radio heads 105C-H can bemaintained at 10 Gbps. Moreover, the bandwidth of Link 9 (whichtransmitted idle data in mapping 500) is not assigned any bandwidth.Further, the bandwidth of Link 10 is reduced to 5 Gbps relative tomapping 500. Because this data is down converted to 1 Gbps, the sameamount of information can be provided to the control plane in the IDF asbefore one of the SerDes lane was unavailable.

In mapping 600, the total assigned bandwidth is 75 Gbps which means thethree functional SerDes lanes can run at the 25 Gbps rate (i.e., thespeeds do not need to be changed) and thus, the cut through model can beemployed. Data replication in the PCS layers can increase the data ratefrom 75 Gbps to 100 Gbps so that the 100 GBASE optical standard can beused. In this manner, the MLG engines can adjust the MLG mappingsdepending on the number of connected radio heads as well as the numberof functional SerDes lanes (i.e., channels) which has a correspondingeffect on the interleaving performed in the PCS layers in the centralcontroller and the IDF.

Returning to method 400, at block 425, the MLG engine adjusts themultiplexing in the PCS layer based on the MLG mapping 600 in FIG. 6.For example, because the bandwidths for Links 1 and 2 were reduced to 5Gbps, the PCS layer transmits 5 Gbps of data to the PCS layerscorresponding to radio heads 105A and 105B but transmits 10 Gbps of datato the PCS layers corresponding to radio heads 105C-H. In this manner,the MLG engine can adjust the bandwidth assigned to the various links inthe MLG mapping and still maintain a 100 Gbps total transmission byusing data replication in the PCS layer.

However, if at block 420, the channels in the wired backend areoperating normally, method 400 proceeds to block 430 where the sameinterleave pattern is maintained. That is, the MLG engines in the IDFand central controller use the same MLG mapping in order to interleavethe data transmitted on the wired backend coupling these devices.

FIG. 7 illustrates a system used to recover a clock in the IDF 125,according to one embodiment described herein. As shown, the IDF 125includes an optical PHY 705 which recovers the data-clock provided bythe central controller 140 when a link is established between theoptical PHY 705 and the central controller 140. This recovered clock 710is used as a reference signal in a jitter cleanup phase locked-loop(PLL) 715 in the IDF 125. In one embodiment, the jitter clean up PLL 715is a narrow bandwidth phase and frequency locked loop. The jitter cleanup PLL 715 provides clock references in the data-path in the IDF. Inthis example, the PLL 715 provides clock references to a PLL clockgenerator 720 and the respective mGig PHYs 730 for the radio heads 105.The PLL clock generator 720 (along with a MLG module 725) can use theclock reference provided by the jitter cleanup PLL 715 to send andreceive data at respective USXGMII interfaces which are in turn coupledto the respective PHYs 730. In one embodiment, the PHYs 730 are part ofthe PCS layers 305 illustrated in FIG. 3.

Because the clock reference outputted by the Jitter Cleanup PLL 715 isused as the mGig data-clock reference for the PHYs 730, the radio-heads105 can recover a clock which is phase and frequency locked to the clockoutputted by the central controller 140. In this manner, the IDF 125recovers a clock from the central controller 140 which can be used tosynchronize the radio heads 105 to the central controller 140.

In the preceding, reference is made to embodiments presented in thisdisclosure. However, the scope of the present disclosure is not limitedto specific described embodiments. Instead, any combination of thefeatures and elements provided above, whether related to differentembodiments or not, is contemplated to implement and practicecontemplated embodiments. Furthermore, although embodiments disclosedherein may achieve advantages over other possible solutions or over theprior art, whether or not a particular advantage is achieved by a givenembodiment is not limiting of the scope of the present disclosure. Thus,the aspects, features, embodiments and advantages described herein aremerely illustrative and are not considered elements or limitations ofthe appended claims except where explicitly recited in a claim(s).Likewise, reference to “the invention” shall not be construed as ageneralization of any inventive subject matter disclosed herein andshall not be considered to be an element or limitation of the appendedclaims except where explicitly recited in a claim(s).

As will be appreciated by one skilled in the art, the embodimentsdisclosed herein may be embodied as a system, method or computer programproduct. Accordingly, aspects may take the form of an entirely hardwareembodiment, an entirely software embodiment (including firmware,resident software, micro-code, etc.) or an embodiment combining softwareand hardware aspects that may all generally be referred to herein as a“circuit,” “module” or “system.” Furthermore, aspects may take the formof a computer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include acomputer-readable storage medium (or media) having computer readableprogram instructions thereon for causing a processor to carry outaspects of the present invention.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium is any tangible medium that can contain, or store a program foruse by or in connection with an instruction(s) execution system,apparatus or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction(s) execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent disclosure may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present disclosure are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodimentspresented in this disclosure. It will be understood that each block ofthe flowchart illustrations and/or block diagrams, and combinations ofblocks in the flowchart illustrations and/or block diagrams, can beimplemented by computer program instructions. These computer programinstructions may be provided to a processor of a general purposecomputer, special purpose computer, or other programmable dataprocessing apparatus to produce a machine, such that the instructions,which execute via the processor of the computer or other programmabledata processing apparatus, create means for implementing thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instruction(s)s may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational blocks to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instruction(s)s which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The flowchart and block diagrams in the Figs. illustrate thearchitecture, functionality and operation of possible implementations ofsystems, methods and computer program products according to variousembodiments. In this regard, each block in the flowchart or blockdiagrams may represent a module, segment or portion of code, whichcomprises one or more executable instructions for implementing thespecified logical function(s). It should also be noted that, in somealternative implementations, the functions noted in the block may occurout of the order noted in the figures. For example, two blocks shown insuccession may, in fact, be executed substantially concurrently, or theblocks may sometimes be executed in the reverse order, depending uponthe functionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts, or combinations of special purpose hardware andcomputer instructions.

In view of the foregoing, the scope of the present disclosure isdetermined by the claims that follow.

We claim:
 1. An intermediate distribution frame (IDF), comprising:forwarding logic configured to: receive data from a central controllerintended for a plurality of radio heads; recover a clock used togenerate the received data; multiplex the received data into respectiveinput/output (I/O) interfaces for the plurality of radio heads; andtransmit the multiplexed data to the plurality of radio heads via therespective I/O interfaces along with the recovered clock, wherein theplurality of radio heads each comprises an antenna for wirelesslytransmitting the multiplexed data.
 2. The IDF of claim 1, wherein therecovered clock synchronizes the plurality of radio heads to the centralcontroller.
 3. The IDF of claim 1, wherein the received data comprisesinterleaved data plane traffic for the radio heads, wherein an I/Ointerface in the forwarding logic includes a physical coding sublayer(PCS) that multiplexes the interleaved data plane traffic intorespective PCS layers corresponding to the plurality of radio heads. 4.The IDF of claim 3, wherein the respective PCS layers are configured toforward the multiplexed data to the plurality of radio heads.
 5. The IDFof claim 1, further comprising: a power supply configured to providepower over Ethernet (PoE) to the plurality of radio heads.
 6. The IDF ofclaim 5, wherein the respective I/O interfaces are configured to connectto twisted pair Ethernet cables to communicate with the plurality ofradio heads, wherein the forwarding logic comprises an I/O interfacecorresponding to the central controller, wherein the I/O interface isconfigured to connect to an optical cable to communicate with thecentral controller.
 7. The IDF of claim 1, wherein the forwarding logicis configured to: receive control plane traffic from the centralcontroller for managing the IDF, wherein the control plane traffic isreceived in a same data stream as the received data intended for theplurality of radio heads.
 8. The IDF of claim 1, further comprising: amulti-link gearbox (MLG) engine configured to establish a pattern usedwhen multiplexing the received data to the plurality of radio heads,wherein the MLG engine is configured to change the pattern as at leastone of the number of radio heads coupled to the IDF varies and linkspeed to the plurality of radio heads changes.
 9. A distributed system,comprising: a central controller; an IDF coupled to the centralcontroller via a first cable; and a plurality of radio heads coupled tothe IDF via respective cables, wherein the IDF is configured to: receivedata from the central controller intended for the plurality of radioheads; recover a clock used to generate the received data; multiplex thereceived data into respective input/output (I/O) interfaces for theplurality of radio heads; and transmit the multiplexed data to theplurality of radio heads via the respective I/O interfaces along withthe recovered clock, wherein the plurality of radio heads each comprisesan antenna for wirelessly transmitting the multiplexed data.
 10. Thedistributed system of claim 9, wherein the recovered clock synchronizesthe plurality of radio heads to the central controller.
 11. Thedistributed system of claim 9, wherein the received data comprisesinterleaved data plane traffic for the plurality of radio heads, whereinan I/O interface in the IDF includes a physical coding sublayer (PCS)that multiplexes the interleaved data plane traffic into respective PCSlayers corresponding to the plurality of radio heads.
 12. Thedistributed system of claim 9, wherein the first cable is an opticalcable and wherein the respective cables are respective Ethernet cables.13. The distributed system of claim 9, wherein the central controller isconfigured to transmit control plane traffic for managing the IDF,wherein the control plane traffic is received in a same data stream asthe received data intended for the plurality of radio heads.
 14. Thedistributed system of claim 9, wherein the central controller isconfigured to assign the plurality of radio heads to a common BSSID sothat the plurality of radio heads appear to a perspective of a userdevice in wireless communication with at least one of the plurality ofradio heads as a single access point.
 15. A method of operating an IDF,comprising: receiving data from a central controller intended for aplurality of radio heads; recovering a clock used to generate thereceived data; multiplexing the received data into respectiveinput/output (I/O) interfaces for the plurality of radio heads; andtransmitting the multiplexed data to the plurality of radio heads viathe respective I/O interfaces along with the recovered clock, whereinthe plurality of radio heads each comprises an antenna for wirelesslytransmitting the multiplexed data.
 16. The method of claim 15, whereinthe recovered clock synchronizes the plurality of radio heads to thecentral controller.
 17. The method of claim 15, wherein the receiveddata comprises interleaved data plane traffic for the plurality of radioheads, wherein a first I/O interface in the IDF includes a physicalcoding sublayer (PCS) that multiplexes the interleaved data planetraffic into respective PCS layers corresponding to the plurality ofradio heads.
 18. The method of claim 15, further comprising: providingPoE to the plurality of radio heads via respective Ethernet cablescoupled to the IDF and the plurality of radio heads.
 19. The method ofclaim 15, wherein the I/O interfaces are configured to connect toEthernet cables to communicate with the plurality of radio heads,wherein the IDF comprises an I/O interface corresponding to the centralcontroller, wherein the I/O interface is configured to connect to anoptical cable to communicate with the central controller.
 20. The methodof claim 15, comprising: receiving control plane traffic from thecentral controller for managing the IDF, wherein the control planetraffic is received in a same data stream as the received data intendedfor the plurality of radio heads.